Codeシリーズの通知イベントをまとめてみた
こんにちは。たかやまです。
最近Codeシリーズの通知を調べる機会があり、イベント一覧を見たのですがカテゴリごとに通知される内容がぱっと見どう違うかわかりませんでした(特にpipeline)。
そこで今回は実際のイベントをChatbotの通知形式でまとめてみました。
構成
構成はシンプルな以下の構成でテストしています。
通知の詳細タイプはすべてフル
で設定しています。
Detail types - Developer Tools console
サンプルコードはこちらです。
CodeCommit
Codecommitで用意されているイベントは以下の通りです。
Category | Events | Event IDs |
---|---|---|
Comments | On commits On pull requests |
codecommit-repository-comments-on-commits codecommit-repository-comments-on-pull-requests |
Approvals | Status changed Rule override |
codecommit-repository-approvals-status-changed codecommit-repository-approvals-rule-override |
Pull request | Created Source updated Status changed Merged |
codecommit-repository-pull-request-created codecommit-repository-pull-request-source-updated codecommit-repository-pull-request-status-changed codecommit-repository-pull-request-merged |
Branches and tags | Created Deleted Updated |
codecommit-repository-branches-and-tags-created codecommit-repository-branches-and-tags-deleted codecommit-repository-branches-and-tags-updated |
Notification concepts - Developer Tools console
codecommit-repository-comments-on-commits
CodeCommitのコミットにコメントを追加した時に出力されます。
codecommit-repository-comments-on-pull-requests
CodeCommitのプルリクエストにコメントを追加した時に出力されます。
codecommit-repository-approvals-status-changed
CodeCommitのプルリクエストの承認ルールのステータスが更新された時に出力されます。
codecommit-repository-approvals-rule-override
CodeCommitのプルリクエスト承認ルールを上書きした時に出力されます。
codecommit-repository-pull-request-created
CodeCommitのプルリクエストを作成した時に出力されます。
codecommit-repository-pull-request-source-updated
CodeCommitのプルリクエスト元のブランチが変更された時に出力されます。
codecommit-repository-pull-request-status-changed
CodeCommitのプルリクエストのステータスが変更された時に出力されます。
codecommit-repository-pull-request-merged
CodeCommitのプルリクエストがマージされた時に出力されます。
codecommit-repository-branches-and-tags-created
CodeCommitのブランチまたはタグを作成した時に出力されます。
codecommit-repository-branches-and-tags-deleted
CodeCommitのブランチまたはタグを削除した時に出力されます。
codecommit-repository-branches-and-tags-updated
CodeCommitのブランチまたはタグをアップデートした時に出力されます。
CodeBuild
CodeBuildで用意されているイベントは以下の通りです。
Category | Events | Event IDs |
---|---|---|
Build state | Failed Succeeded In-progress Stopped |
codebuild-project-build-state-failed codebuild-project-build-state-succeeded codebuild-project-build-state-in-progress codebuild-project-build-state-stopped |
Build phase | Failure Success |
codebuild-project-build-phase-failure codebuild-project-build-phase-success |
Notification concepts - Developer Tools console
codebuild-project-build-state-failed
CodeBuild失敗時に出力されます。
codebuild-project-build-state-succeeded
CodeBuild完了時に出力されます。
codebuild-project-build-state-in-progress
CodeBuild開始時に出力されます。
codebuild-project-build-state-stopped
CodeBuild停止時に出力されます。
codebuild-project-build-phase-failure
CodeBuildのフェーズ失敗時に出力されます。
codebuild-project-build-phase-success
CodeBuildの各フェーズ完了時に出力されます。
CodeDeploy
CodeDeployで用意されているイベントは以下の通りです。
Category | Events | Event IDs |
---|---|---|
Deployment | Failed Succeeded Started |
codedeploy-application-deployment-failed codedeploy-application-deployment-succeeded codedeploy-application-deployment-started |
Notification concepts - Developer Tools console
codedeploy-application-deployment-failed
CodeDeploy失敗時に出力されます。
codedeploy-application-deployment-succeeded
CodeDeploy成功時に出力されます。
codedeploy-application-deployment-started
CodeDeploy開始時に出力されます。
CodePipeline
CodePipelineで用意されているイベントは以下の通りです。
Category | Events | Event IDs |
---|---|---|
Action execution | Succeeded Failed Canceled Started |
codepipeline-pipeline-action-execution-succeeded codepipeline-pipeline-action-execution-failed codepipeline-pipeline-action-execution-canceled codepipeline-pipeline-action-execution-started |
Stage execution | Started Succeeded Resumed Canceled Failed |
codepipeline-pipeline-stage-execution-started codepipeline-pipeline-stage-execution-succeeded codepipeline-pipeline-stage-execution-resumed codepipeline-pipeline-stage-execution-canceled codepipeline-pipeline-stage-execution-failed |
Pipeline execution | Failed Canceled Started Resumed Succeeded Superseded |
codepipeline-pipeline-pipeline-execution-failed codepipeline-pipeline-pipeline-execution-canceled codepipeline-pipeline-pipeline-execution-started codepipeline-pipeline-pipeline-execution-resumed codepipeline-pipeline-pipeline-execution-succeeded codepipeline-pipeline-pipeline-execution-superseded |
Manual approval | Failed Needed Succeeded |
codepipeline-pipeline-manual-approval-failed codepipeline-pipeline-manual-approval-needed codepipeline-pipeline-manual-approval-succeeded |
codepipeline-pipeline-action-execution-succeeded
CodePipelineの各アクションの開始時に出力されます。
codepipeline-pipeline-action-execution-failed
CodePipelineの各アクションの失敗時に出力されます。
codepipeline-pipeline-action-execution-canceled
CodePipelineの各アクションで構成が変更され実行がキャンセルされた時に出力されます。
codepipeline-pipeline-action-execution-started
CodePipelineの各アクションの開始時に出力されます。
codepipeline-pipeline-stage-execution-started
CodePipelineの各ステージの開始時に出力されます。
codepipeline-pipeline-stage-execution-succeeded
CodePipelineの各ステージが成功した時に出力されます。
codepipeline-pipeline-stage-execution-resumed
CodePipelineの各ステージで途中停止した後、再開した時に出力されます。
codepipeline-pipeline-stage-execution-canceled
CodePipelineの各ステージで構成が変更され実行がキャンセルされた時に出力されます。
codepipeline-pipeline-stage-execution-failed
CodePipelineの各ステージの失敗時に出力されます。
codepipeline-pipeline-pipeline-execution-failed
CodePipeline失敗時に出力されます。
codepipeline-pipeline-pipeline-execution-canceled
CodePipelineの構成が変更され実行がキャンセルされた時に出力されます。
codepipeline-pipeline-pipeline-execution-started
CodePipelineが実行された時に出力されます。
codepipeline-pipeline-pipeline-execution-resumed
CodePipelineの実行を途中停止した後、再開した時に出力されます。
codepipeline-pipeline-pipeline-execution-succeeded
CodePipelineの実行が成功した時に出力されます。
codepipeline-pipeline-pipeline-execution-superseded
CodePipelineの実行が上書きされた時に出力されます。
codepipeline-pipeline-manual-approval-failed
手動承認が失敗(却下)した時に出力されます。
codepipeline-pipeline-manual-approval-needed
手動承認待ちになった時に出力されます。
codepipeline-pipeline-manual-approval-succeeded
手動承認が成功した時に出力されます。
通知の使い分け
いかがだったでしょうか?
CodePipelineを利用している場合は、他のCodeシリーズで通知される内容(Succeeded / Failed / Started)と同等のものをCodepipelineで通知することもできるのですべての通知を有効にするのではなく、組み合わせるサービスごとに適宜通知を選択いただければと思います。
また、CodePipelineのカテゴリー Pipeline execution
Stage execution
Action execution
も粒度が違うだけで似たような通知なので、必要な情報が含まれたカテゴリーのみ有効にすることをおすすめします。
カテゴリー粒度 Pipeline execution -- Stage execution -- Action execution 粗 細
通知の選択肢が多く悩まれてる方に、こちらの内容が助けになれば幸いです。
以上、たかやまでした。